package net.tavion.angelboot.bsm.client;

import net.tavion.angelboot.bsm.dto.*;
import net.tavion.angelboot.common.vo.GenericResponse;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import reactor.core.publisher.Mono;

@FeignClient(name="BSM")
public interface BsmClient {

    @PostMapping("/agw/userlogin")
    GenericResponse<CustomerLoginRspDTO> login(@RequestBody CustomerLoginReqDTO loginParams);

    @PostMapping("/agw/userInfo")
    GenericResponse<CustomerInfoDTO> info(@RequestBody CustomerReqDTO queryDTO);

    @PostMapping("/agw/validKey")
    GenericResponse<SystemKeyInfoDTO> validKey(@RequestParam("channelKey") String channelKey);

}
